package cn.yunhe.controller;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import org.apache.ibatis.session.SqlSession;

import cn.yunhe.entity.ShowList;

public class OldListController {
	
	/**
	 * 获取所有行数据JDBC
	 */
//	public List<ShowList> showAll(){
//		Connection conn=BaseDao.getConn();
//		String sql="select * from showlist";
//		List<ShowList> list=new ArrayList<ShowList>();
//		PreparedStatement pst=null;
//		ResultSet rs=null;
//		try {
//			pst=conn.prepareStatement(sql);
//			rs=pst.executeQuery();
//			while(rs.next()){
//				ShowList item=new ShowList();
//				item.setLid(rs.getInt(1));
//				item.setLname(rs.getString(2));
//				item.setLpwd(rs.getString(3));
//				item.setLaddress(rs.getString(4));
//				list.add(item);
//			}
//		} catch (SQLException e) {
//			e.printStackTrace();
//		} finally {
//			BaseDao.closeAll(conn, pst, rs);
//		}
//		return list;
//	}
	/**
	 * 获取所有行数据mybatis
	 */
	public List<ShowList> showAll(){
		SqlSession session=MyBatisUtil.getSession();
		List<ShowList> list=new ArrayList<ShowList>();
		try{
			list=session.selectList("list.showAll");
		}finally{
			MyBatisUtil.closeSession();
		}
		return list;
	}
	/**
	 * 获取一页数据
	 * @param pageIndex
	 * @param pageSize
	 * @return
	 */
	public List<ShowList> showAllByPage(Integer pageIndex,Integer pageSize){
		SqlSession session=MyBatisUtil.getSession();
		List<ShowList> list=new ArrayList<ShowList>();
		HashMap map=new HashMap();
		map.put("minIndex", (pageIndex-1)*pageSize);
		map.put("maxIndex", (pageIndex)*pageSize);
		try{
			list=session.selectList("list.showAllByPage",map);
		}finally{
			MyBatisUtil.closeSession();
		}
		return list;
	}
	/**
	 * 根据id查询出一条数据JDBC
	 * @param lid
	 * @return
	 */
//	public ShowList searchById(Integer lid){
//		Connection conn=BaseDao.getConn();
//		String sql="select * from showlist where lid=?";
//		PreparedStatement pst=null;
//		ResultSet rs=null;
//		ShowList item=null;
//		try {
//			pst=conn.prepareStatement(sql);
//			pst.setInt(1, lid);
//			rs=pst.executeQuery();
//			if(rs.next()){
//				item=new ShowList();
//				item.setLid(rs.getInt(1));
//				item.setLname(rs.getString(2));
//				item.setLpwd(rs.getString(3));
//				item.setLaddress(rs.getString(4));
//			}
//		} catch (SQLException e) {
//			e.printStackTrace();
//		} finally {
//			BaseDao.closeAll(conn, pst, rs);
//		}
//		return item;
//	}
	/**
	 * 根据id查询出一条数据mybatis
	 * @param lid
	 * @return
	 */
	public ShowList searchById(Integer lid){
		ShowList item=null;
		SqlSession session=MyBatisUtil.getSession();
		try{
			item=session.selectOne("list.searchById", lid);
		}finally{
			MyBatisUtil.closeSession();
		}
		return item;
	}
	/**
	 * 修改指定id的信息JDBC
	 * @param item
	 * @return
	 */
//	public int edit(ShowList item){
//		Connection conn=BaseDao.getConn();
//		String sql="update showlist set lname=?,lpwd=?,laddress=? where lid=?";
//		PreparedStatement pst=null;
//		int i=0;
//		try {
//			pst=conn.prepareStatement(sql);
//			pst.setString(1, item.getLname());
//			pst.setString(2, item.getLpwd());
//			pst.setString(3, item.getLaddress());
//			pst.setInt(4, item.getLid());
//			i=pst.executeUpdate();
//		} catch (SQLException e) {
//			e.printStackTrace();
//		} finally {
//			BaseDao.closeAll(conn, pst, null);
//		}
//		return i;
//	}
	/**
	 * 修改指定id的信息mybatis
	 * @param item
	 * @return
	 */
	public int edit(ShowList item){
		int i=0;
		SqlSession session=MyBatisUtil.getSession();
		try {
			HashMap map=new HashMap();
			map.put("lid", item.getLid());
			map.put("lname", item.getLname());
			map.put("lpwd", item.getLpwd());
			map.put("laddress", item.getLaddress());
			i=session.update("list.edit", map);
			session.commit();
		}  finally {
			MyBatisUtil.closeSession();
		}
		return i;
	}
	/**
	 * 删除某列JDBC
	 * @param lid
	 * @return
	 */
//	public int del(Integer lid){
//		Connection conn=BaseDao.getConn();
//		String sql="delete showlist where lid=?";
//		PreparedStatement pst=null;
//		int i=0;
//		try {
//			pst=conn.prepareStatement(sql);
//			pst.setInt(1, lid);
//			i=pst.executeUpdate();
//		} catch (SQLException e) {
//			e.printStackTrace();
//		} finally {
//			BaseDao.closeAll(conn, pst, null);
//		}
//		return i;
//	}
	
	/**
	 * 删除某列mybatis
	 * @param lid
	 * @return
	 */
	public int del(Integer lid){
		int i=0;
		SqlSession session=MyBatisUtil.getSession();
		try {
			i=session.delete("list.del",lid);
			session.commit();
		}finally {
			MyBatisUtil.closeSession();
		}
		return i;
	}
}
